\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{enumerate}

\title{Software Engineering}
\author{Adrian.Nembach@uni-konstanz.de 01/842319\\Udo.3.Schlegel@uni-konstanz.de 01/840835\\Sirui.Liu@uni-konstanz.de 01/857316}
\begin{document}
\maketitle

\section{Introduction}
\subsection{Purpose}
Based on this Software Requirements Specification a simple Onlineshop shall be implemented.
\subsection{Scope}
The system shall be implemented for one shop owner, who can proclaim and sell his products to 
customers all over the world. The system shall run on a webserver and to get in contact with the system an internet connection is required.
\begin{itemize}
\item Customers must be able to register themselves.
\item Customers must be able to place orders.
\item The shop owner must be able to cancel orders.
\item Customers must be able to cancel orders before they are shipped.
\end{itemize}
\subsection{Definitions}
In this Software Requirements Specification will the Onlineshop will be referenced simply as the system.

\subsection{References}
IEEE 830-1998 

\subsection{Overview}
The product is an online shopping website

\section{Overall description}

\subsection{Product perspective}
An online shopping platform.

\subsection{Product functions}
\begin{enumerate}
\item The system shall be viewable on all standard browsers.
\item The system shall list all products on a website.
\item The system shall order the list of products by their categories.
\item The system shall have an own product site for every product.
\item The system shall provide on the product site all information and pictures about the product.
\item The system shall have a shopping cart avaible for a customer on the website.
\item The system shall let the customer add products to the shopping cart.
\item The system shall let the customer check their shopping cart.
\item The system shall let the customer order all the things in the shopping cart.
\item The System should confirm the customer when a order was successful 
\item The System should prozess the order after confirmation with the customer
\item The System should notify the Owner if there is a new order, the notification should be done by e-mail
\item The order should be able to be cancelled by the Owner if the product is not in stock
\item The Owner should be able to login the System
\item The Owner should see all pending orders after logging in to the System
\item The pending orders should be represented on a list to the Owner
\item The System should print a packing list if the Owner requests it
\item The System should print a invoice if the Owner requests it
\item There shall be a numbering scheme for invoices.
\item All invoices shall be numbered according to this numbering scheme.
\item The Owner shall be able to attach a tracking id of a shipment company to every order.
\item The system shall send a confirmation email to the customer when the order is shipped.
\item The confirmation email sent to the customer shall contain the tracking id.
\end{enumerate}

\subsection{User charasteristics}
Specific customers, who want to buy a product of the shop owner and either know about the shop or went there through recommendations or ads.

\subsection{Assumptions and dependencies}
The website should work seamlessly with common online payment systems.

\section{Specific requirements}

\subsection{External interfaces}
\begin{enumerate}
\item Interfaces with online banking and other online payment systems such as online banking, paypal etc. should be supported to enable a better and easier paying method.
\item Interfaces with common email servers such as GMail, Yahoo etc. to settle a good communication.
\item Interfaces with common logistic companies such as DHL, UPS etc. to support a tracking of the product.
\end{enumerate}

\subsection{Performance requirements}
A server cluster, which supports the amount of users, who try to get on the website and try to order products. Fast enough for a lot of concurrent users, stable enough that users are able to shop on the platform even if its at a peak time.

\subsection{Logical database requirements}
\begin{enumerate}
\item After a power failure the system should be able to recover all transactions before the failure.
\item After a power failure the system should be able to recover all product availability data before the failure.
\end{enumerate}

\subsection{Software system attributes}
\begin{enumerate}
\item The product should be fully compatible with browsers, which are used most.
\item If the product is not compatible with the browser a user is using, it should be able to switch to simple HTML or display an error.
\item After a browser crash the user should be able to restore the site before crash.
\end{enumerate}


\end{document}